﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using NUnit.Framework;              //References: nunit.framework
using ProyectoGrupo5.Persistencia;
using ProyectoGrupo5.ClasesDominio;

//07/06/2011

namespace ProyectoGrupo5.Pruebas
{

    [TestFixture]
    public class TestPostulanteDAO
    {
        [Test]
        public void TestCrearPostulante()
        {
            Postulante nuevoPostulante = new Postulante();
            nuevoPostulante.CodigoPostulante = 2;
            nuevoPostulante.ApellidoPaterno = "Ramos";
            nuevoPostulante.ApellidoMaterno = "Paredes";
            nuevoPostulante.Nombre = "Luis";
            nuevoPostulante.Sexo = "M";
            nuevoPostulante.Correo = "lparedes@hotmail.com";
            nuevoPostulante.FechaNacimiento = DateTime.Now;
            nuevoPostulante.Contrasena = "lpr1234";

            nuevoPostulante.CodigoPostulante = 1;
            nuevoPostulante.ApellidoPaterno = "Perez";
            nuevoPostulante.ApellidoMaterno = "Sanchez";
            nuevoPostulante.Nombre = "Juan";
            nuevoPostulante.Sexo = "M";
            nuevoPostulante.Correo = "jperez@hotmail.com";
            nuevoPostulante.FechaNacimiento = DateTime.Now;
            nuevoPostulante.Contrasena = "jp98765";

            PostulanteDAO postulanteDAO = new PostulanteDAO();
            Postulante postulanteCreado = postulanteDAO.CrearPostulante(nuevoPostulante);
            Assert.NotNull(postulanteCreado);
        }

        [Test]
        public void TestObtenerPostulante()
        {
            Int32 codigoPostulante = 1;
            PostulanteDAO postulanteDAO = new PostulanteDAO();
            Postulante postulanteExistente = postulanteDAO.ObtenerPostulante(codigoPostulante);
            Assert.AreEqual(codigoPostulante, postulanteExistente.CodigoPostulante);
            Assert.NotNull(postulanteExistente.Nombre);
        }

        [Test]
        public void TestModificarPostulante()
        {
            Postulante antiguoPostulante = new Postulante();
            antiguoPostulante.CodigoPostulante = 1;
            antiguoPostulante.ApellidoPaterno = "Perea";
            antiguoPostulante.ApellidoMaterno = "Sanchez";
            antiguoPostulante.Nombre = "Jorge";
            antiguoPostulante.Sexo = "M";
            antiguoPostulante.Correo = "lparedes@hotmail.com";
            antiguoPostulante.FechaNacimiento = Convert.ToDateTime("01/05/2011");
            antiguoPostulante.Contrasena = "lpr1234";

            PostulanteDAO postulanteDAO = new PostulanteDAO();
            Postulante postulanteModificado = postulanteDAO.ModificarPostulante(antiguoPostulante);
            Assert.NotNull(postulanteModificado);
        }

        [Test]
        public void TestEliminarPostulante()
        {
            Int32 codigoPostulante = 1;
            PostulanteDAO postulanteDAO = new PostulanteDAO();
            postulanteDAO.EliminarPostulante(codigoPostulante);
            //  Assert.AreEqual(codigoPostulante, tutorExistente.Codigo);
            //  Assert.NotNull(tutorExistente.Nombres);
        }
    }
}